home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat3 / SCSL / slasd4.z / slasd4
Encoding:
Text File  |  2002-10-03  |  4.7 KB  |  133 lines

  1.  
  2.  
  3.  
  4. SSSSLLLLAAAASSSSDDDD4444((((3333SSSS))))                                                          SSSSLLLLAAAASSSSDDDD4444((((3333SSSS))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      SLASD4 - subroutine computes the square root of the I-th updated
  10.      eigenvalue of a positive symmetric rank-one modification to a positive
  11.      diagonal matrix whose entries are given as the squares of the
  12.      corresponding entries in the array d, and that  0 <= D(i) < D(j) for i <
  13.      j  and that RHO > 0
  14.  
  15. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  16.      SUBROUTINE SLASD4( N, I, D, Z, DELTA, RHO, SIGMA, WORK, INFO )
  17.  
  18.          INTEGER        I, INFO, N
  19.  
  20.          REAL           RHO, SIGMA
  21.  
  22.          REAL           D( * ), DELTA( * ), WORK( * ), Z( * )
  23.  
  24. IIIIMMMMPPPPLLLLEEEEMMMMEEEENNNNTTTTAAAATTTTIIIIOOOONNNN
  25.      These routines are part of the SCSL Scientific Library and can be loaded
  26.      using either the -lscs or the -lscs_mp option.  The -lscs_mp option
  27.      directs the linker to use the multi-processor version of the library.
  28.  
  29.      When linking to SCSL with -lscs or -lscs_mp, the default integer size is
  30.      4 bytes (32 bits). Another version of SCSL is available in which integers
  31.      are 8 bytes (64 bits).  This version allows the user access to larger
  32.      memory sizes and helps when porting legacy Cray codes.  It can be loaded
  33.      by using the -lscs_i8 option or the -lscs_i8_mp option. A program may use
  34.      only one of the two versions; 4-byte integer and 8-byte integer library
  35.      calls cannot be mixed.
  36.  
  37. PPPPUUUURRRRPPPPOOOOSSSSEEEE
  38.      This subroutine computes the square root of the I-th updated eigenvalue
  39.      of a positive symmetric rank-one modification to a positive diagonal
  40.      matrix whose entries are given as the squares of the corresponding
  41.      entries in the array d, and that 0 <= D(i) < D(j) for i < j and that RHO
  42.      > 0. This is arranged by the calling routine, and is no loss in
  43.      generality.  The rank-one modified system is thus
  44.  
  45.             diag( D ) * diag( D ) +  RHO *  Z * Z_transpose.
  46.  
  47.      where we assume the Euclidean norm of Z is 1.
  48.  
  49.      The method consists of approximating the rational functions in the
  50.      secular equation by simpler interpolating rational functions.
  51.  
  52.  
  53. AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
  54.      N      (input) INTEGER
  55.             The length of all arrays.
  56.  
  57.      I      (input) INTEGER
  58.             The index of the eigenvalue to be computed.  1 <= I <= N.
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. SSSSLLLLAAAASSSSDDDD4444((((3333SSSS))))                                                          SSSSLLLLAAAASSSSDDDD4444((((3333SSSS))))
  71.  
  72.  
  73.  
  74.      D      (input) REAL array, dimension ( N )
  75.             The original eigenvalues.  It is assumed that they are in order, 0
  76.             <= D(I) < D(J)  for I < J.
  77.  
  78.      Z      (input) REAL array, dimension ( N )
  79.             The components of the updating vector.
  80.  
  81.      DELTA  (output) REAL array, dimension ( N )
  82.             If N .ne. 1, DELTA contains (D(j) - sigma_I) in its  j-th
  83.             component.  If N = 1, then DELTA(1) = 1.  The vector DELTA
  84.             contains the information necessary to construct the (singular)
  85.             eigenvectors.
  86.  
  87.      RHO    (input) REAL
  88.             The scalar in the symmetric updating formula.
  89.  
  90.      SIGMA  (output) REAL
  91.             The computed lambda_I, the I-th updated eigenvalue.
  92.  
  93.      WORK   (workspace) REAL array, dimension ( N )
  94.             If N .ne. 1, WORK contains (D(j) + sigma_I) in its  j-th
  95.             component.  If N = 1, then WORK( 1 ) = 1.
  96.  
  97.      INFO   (output) INTEGER
  98.             = 0:  successful exit
  99.             > 0:  if INFO = 1, the updating process failed.
  100.  
  101. PPPPAAAARRRRAAAAMMMMEEEETTTTEEEERRRRSSSS
  102.      Logical variable ORGATI (origin-at-i?) is used for distinguishing whether
  103.      D(i) or D(i+1) is treated as the origin.
  104.  
  105.      ORGATI = .true.    origin at i ORGATI = .false.   origin at i+1
  106.  
  107.      Logical variable SWTCH3 (switch-for-3-poles?) is for noting if we are
  108.      working with THREE poles!
  109.  
  110.      MAXIT is the maximum number of iterations allowed for each eigenvalue.
  111.  
  112.      Further Details ===============
  113.  
  114.      Based on contributions by Ren-Cang Li, Computer Science Division,
  115.      University of California at Berkeley, USA
  116.  
  117. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  118.      INTRO_LAPACK(3S), INTRO_SCSL(3S)
  119.  
  120.      This man page is available only online.
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.